The present invention relates generally to the detection of bits which are protected by repetition, and which, along with their repetitions, have soft values available which give a measurement of the reliability of their received values. In particular, the present invention may be used in the decoding process of speech parameters in the GSM mobile communications system, and more particularly to the detection of those class 2 bits called pulse5 bits in enhanced full-rate speech (EFS) which are not protected with channel coding.
In GSM, the speech is digitised and sliced into 20 ms pieces. A 20 ms speech frame is designed to contain 260 bits which is divided into three blocks of bits, class 1a, class 1b, and class 2, according to their level of protection. A speech frame sent every 20 ms gives a net bit rate of 13 kbit/s. The normal mode of transmission in GSM is called full rate speech (FS).
Another option in GSM is enhanced full rate speech (EFS), which is more efficient than ordinary full rate speech (FS). Although FS uses 260 bits to encode various speech parameters, EFS only needs 244 bits to encode the same information. Thus, in comparison to FS, EFS has 16 extra bits that can be used to protect some of the other bits. An 8 bit cyclic redundancy check (CRC) is used for error detection among some of the bits (i.e. the class 1b bits), while the other 8 of the 16 bits are used to protect some of the other bits known as pulse5 bits.
In EFS there are certain bits known as pulse5 bits generated by the speech encoder. These bits are not protected with channel coding, although they are protected by repeating them. In each speech frame there are four pulse5 bits that are protected by repeating each pulse bit two times, which gives a total of twelve (4xc3x97(1 pulse5 bit+2 repetitions)) pulse5 bits in each speech frame.
The system must detect the values of each of the bits transmitted. Today, a pulse5 bit is detected by means of a majority decision. Since each pulse5 bit is repeated twice, a majority decision is made among the three resulting bits; if two of the three bits are 0s then the decision will be taken that the value of the pulse5 bit as transmitted was equal to a 0,The GSM specification itself does not mention a particular detection method, but merely requires that each pulse5 bit must be repeated.
The prior art method still presents a problem, however, since it doesn""t make any use of the xe2x80x9csoftxe2x80x9d values provided in the equalizer. These values provide a measure of the reliability of the bits received. A better method is proposed by the present invention that makes use of certain soft values provided by the equalizer.
In current GSM systems, a Viterbi equalizer is used which provides certain soft values about the received bits in addition to the bits themselves. The output of the equalizer gives both the value of the bit as received, and a measure of its reliability. The measure of the reliability is in the form of a probability that the bit is indeed equal to 0 or 1. By ignoring the soft values, present methods are not as reliable as that proposed by the present invention.
For example, in the present state of the art systems a majority decision is taken when two bits have the same value (e.g. two 1s) in spite of the fact that their reliability might be low (i.e. low soft values). In addition, the reliability of the third bit, which can be of another value (e.g. 0), might be high. In this example, the state of the art would detect a value of 1, while the present invention would detect a value of 0, because a 0 was the most probable bit that was repeated according to the soft values.
These soft values are currently available in the decoder in present systems where they are normally used in the channel decoding process. The present invention proposes modifying the structure of current systems to then make use of these soft values to make a soft decision on the value of the pulse5 bits. Simulations of this use of soft values instead of majority decision has shown an improved C/I and SNR performance of approximately 4.5 dB in the detection of these pulse5 bits.
As has been seen, there currently exists a problem with the present methods of using a simple majority decision to determine the value of the pulse5 bits in a GSM speech frame. The present invention aims to solve this problem by using those soft values provided by the equalizer. In current systems these soft values are used only for channel decoding and are not then available for use in detection of the pulse5 bits. Because they can provide a measure of the reliability of the bits from the equalizer, they can increase the reliability of the decision taken that determines the value of the pulse5 bits.
Each speech frame in enhanced full rate (EFS) speech uses 244 of 260 available bits for encoding speech, leaving 16 bits available for protection of other bits. Among the 260 bits are 4 bits called pulse5 bits. These 4 bits are each repeated twice, resulting in 12 total bits. For each of four total pulse5 bits there are three soft values, the soft value of the original bit plus the soft values of two repetitions.
The equalizer produces a soft value for each of these three bits. In the first step of the method the bits whose values are equal to 0 are chosen. Then the soft values of these bits are added together to yield a value called SumSoft0, which will thereby be the sum of the soft values for all the bits equal to 0 for a given pulse5 bit.
The next step in the present invention is to similarly choose the bits whose values are equal to 1. Then the soft values of these bits are added together to yield a value called SumSoft1, which will thereby be the sum of the soft values for all the bits equal to 1 for a given pulse5 bit.
After the values for SumSoft0 and SumSoft1 are determined, a decision is taken according to the algorithm below:
if SumSoft0 greater than SumSoft1 then
pulse5_bit:=0
else if SumSoft0 less than SumSoft1 then
pulse5_bit:=1
else
an ordinary majority decision takes place.
The present invention improves over the performance of present systems in the detection of pulse5 bits. A normal majority decision as performed by current systems can only correct one bit error. If two bit errors occur out of the three bits allocated for each pulse5 bit, then an incorrect decision will be taken. By using the soft values for each of these bits, as a measure of their probability and reliability, performance is improved. Test simulations have indicated an improved C/I and SNR performance of approximately 4.5 dB in the detection of these bits.
Although the preferred embodiment of the present invention focuses primarily on the detection of pulse5 bits in GSM systems, the algorithm may be used in broader applications. The use of repetition to protect bits, as is done with pulse5 bits, is not often used, due to its inefficiency. However, the additional availability of xe2x80x9csoftxe2x80x9d values for the bit and its repetitions makes possible the use of the present invention for detection of any bit which is protected by repetition and which has xe2x80x9csoftxe2x80x9d values available.